A large variety of algorithms need to use specialized mathematical functions, like sin( ), cos( ), a tan( ), and div( ), for their implementation. Some platforms provide special hardware blocks for these functions while other platforms do not have such hardware accelerators and need to implement this functionality in software. The complexity of these software implementations become especially important if these functions need to be called repeatedly in a loop. Also, some applications need high precision versions of these functions while other applications can tolerate approximations.